General

What is Foo?

some markup goes here

some source code

some markup goes here

What is Bar?

some markup goes here

Developers

When do I need a custom plugin class? Isn't a Velocity script enough?

In most cases a Velocity or Jelly script is enough, and you can use the built-in <velocity> or <jelly> plugins.

However, if you need to provide special logic to your templates, you should subclass one of the base plugin classes and implement this special logic there. See the Custom Plugins section in the developer documentation for more information.

What Plugin class should I extend?

some markup goes here

I see a lot of @bean tags and generated BeanInfo classes everywhere. Why is all that needed?

BeanInfo is used as runtime attributes. The XDoclet SDK has a plugin that can generate BeanInfo classes, and these can be used at runtime to discover attributes about a class.

More information can be found here .